{{tag>apt}}


Traduit par [[utilisateurs:phetu]]
Original: [[https://wiki.ubuntu.com/AptMoveHowto|AptMoveHowto]]
Modifié par plusieurs personnes depuis

Cette page décrit commment faire un cd-rom qui contient les paquets que vous avez téléchargés sur votre ordinateur avec [[:synaptic]] ou apt. Le cd-rom sera donc un répertoire de paquets auquel un autre ordinateur pourra avoir accès facilement avec synaptic ou apt-cdrom.

Par exemple, Je vais vous montrer comment faire un cd-rom qui contient toutes les mises-à-jour de sécurité téléchargées.



===== Première étape: l'installation de apt-move =====

Apt-move est un utilitaire pour la création de répertoire de paquets debian avec les paquets téléchargés qui sont dans le répertoire /var/cache/apt/archives. Apt-move va créer le répertoire local /mirrors/debian, par défault. L'installation de apt-move se fait comme ceci.

  sudo apt-get install apt-move


(ou simplement avec synaptic) Vous avez besoin du dépot Universe. Voir [[applications:apt:depots|Dépots]]


Vous pouvez changer la configuration dans le fichier /etc/apt-move.conf.

  COPYONLY=no

pour

  COPYONLY=yes

Cette modification permet que apt-move ne détruise pas les paquets dans /var/cache/apt/archives/.


===== Deuxième étape: La sélection des paquets à mettre dans le cd =====


Premièrement, nous faisons le ménage des vieux paquets dans /var/cache/apt/archives:

  sudo apt-get autoclean


Dans cette exemple, vous n'avez besoin que des paquets qui ne sont pas dans le cd original d'Ubuntu puisque vous les avez déjà donc vous pouvez détruire ces paquets avec le script une fois votre cd-rom monté :

  for f in `find /media/cdrom/pool/ -name '*.deb' -printf %f\\n`
  do
    if [ -f /var/cache/apt/archives/$f ]; then
      sudo rm -v /var/cache/apt/archives/$f
    fi
  done


===== Troisième étape: Exécuter apt-move pour créer la structure de l'archive =====

Assurez-vous d'abord d'avoir suffisamment d'espace sur le disque dur :

  df -h

Puisque le répertoire /mirrors/debian est un répertoire qui appartient à root la manipulation devient plus facile avec cet utilisateur, donc :

  sudo -s


Maintenant toutes les commandes sont éxécutées avec les permissions root donc faites gaffe !!!!
Premièrement, assurez-vous d'avoir un environment propre en supprimant les mirroirs précédents :

  rm -rf /mirrors/debian

Ensuite, on lance apt-move :

  apt-move -d breezy update


**Attention si vous utilisez une autre version que breezy, pensez à mettre dapper,  Edgy ou autre!**

À cause de la structure des répertoires d'Ubuntu ce ne sont pas tous les paquets qui sont ajoutés dans la liste Packages.gz. Vous devez donc refaire Packages.gz à l'aide la commande apt-ftparchive.


  cd /mirrors/debian
  apt-ftparchive packages pool/main/ | gzip -9c > dists/breezy/main/binary-i386/Packages.gz
  apt-ftparchive packages pool/restricted/ | gzip -9c > dists/breezy/restricted/binary-i386/Packages.gz


**Ici on ne prend que les fichiers main et restricted **

Vous devez aussi refaire le fichier Release, pour ce faire vous devez vous faire un fichier de configuration apt nommé ~/myapt.conf qui contient ceci :

  APT::FTPArchive::Release {
  Origin "APT-Move";
  Label "APT-Move";
  Suite "breezy";
  Codename "breezy";
  Architectures "i386";
  Components "main restricted";
  Description "Ubuntu Updates CD";
  };


**Pensez de nouveau à modifier le nom de la distributions, breez, dapper, egdy, .... tout comme l'architecture i386 peut-être i686**


Ensuite, lancez la commande :

  rm dists/breezy/Release
  apt-ftparchive -c ~/myapt.conf release dists/breezy/ > Release
  mv Release dists/breezy/Release


Puis c'est le moment de créer le fichier Release.gpg, pour ce faire, vous devez avoir une [[:gnupg#gerer_les_clefs_avec_gpg|clé GPG]] et prête à la signature :

  gpg -bao dists/breezy/Release.gpg dists/breezy/Release


Ensuite, supprimez le répertoire .apt-move:

  rm -rf .apt-move


Vous pouvez identifier le cd-rom à l'aide du dossier .disk et du fichier info à l'intérieur :

  mkdir .disk
  echo Ubuntu-Updates `date +%Y-%m-%d` > .disk/info


Puis, ajoutez lui votre clé publique :

  gpg --export -a <identifiant> > public.key

===== Quatrième étape la gravure du cd-rom =====

Copiez le contenu de /mirrors/debian dans un cd-rom.

En mode console avec cette commande :

  mkisofs -r -A "Ubuntu Updates `date +%Y%m%d`" -o ubuntu-updates.iso /mirrors/debian


Avant de l'utiliser, vous devez ajouter votre clé à la clé apt. Donc, après avoir monté le CD-ROM exécutez cette commande :

  apt-key add /cdrom/public.key

Synaptic permet aussi l'ajout de cd-rom dans le menu Edit -> Ajouter un cédérom.

Une autre façon de faire est cette commande :

  sudo apt-cdrom add
